package com.arrogames.blondbattle.assets {
	import starling.utils.AssetManager;
	
	public class AssetManager extends starling.utils.AssetManager {
		
		private static var _instance:com.arrogames.blondbattle.assets.AssetManager;
		
		public function AssetManager(enforcer:AssetManagerSingletonEnforcer) {
			super();
			if (enforcer == null) {
				throw new Error("This singleton class does not allow construction in this way use '.instance'.");
			}
			
			this.verbose = true;//change to turn debugging log on/off
		}
		
		public static function get instance():com.arrogames.blondbattle.assets.AssetManager {
			if (_instance == null) {
				_instance = new com.arrogames.blondbattle.assets.AssetManager(new AssetManagerSingletonEnforcer());
			}
			
			return _instance;
		}
		
		public function enqueueAll():void {
			//Fonts
			enqueue(FontAssets);
			
			//Audio
			enqueue(AudioAssets);
			
			//Game Graphics
			enqueue(GameAssets);
			enqueue(GameUIAssets);
			
			//Menu Graphics
			enqueue(MenuAssets);
		}
	}
}
class AssetManagerSingletonEnforcer {}